<?xml version='1.0' encoding='ISO-8859-1' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"            
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="/pages/core/plantilla/plantillaPrincipal.xhtml">

        <ui:define name="contenido">          
            <h:form onsubmit="return checkSubmit();"  id="frmPrincipal">        
                <p:panel id="pgFormFilter" header="#{i18n['menu.contabilidad.asiento.titulo']} ### #{sessionMBean.mesContableDto.descripcion} - #{sessionMBean.anoContableDto.descripcion} ###" style="#{applicationMBean.estiloTitulo}">
                    <h:panelGrid columns="10" cellspacing="5">
                        <h:outputLabel value="#{i18n['label.conta.asiento.id']}" styleClass="label"/>
                        <p:inputText label="#{i18n['label.conta.asiento.id']}" 
                                     value="#{asientoMBean.dtoFiltro.id}"  onkeypress="return fn_validaTecla('entero',this)"
                                     styleClass="txtCampo" size="15">                            
                        </p:inputText>  
                        <h:outputLabel styleClass="label" value="#{i18n['label.conta.asiento.origen']}"/>
                        <p:selectOneMenu value="#{asientoMBean.dtoFiltro.origenDto}"  converter="parametroConvert"  disabled="#{sessionMBean.accion == applicationMBean.ver}"                               
                                                 style="#{applicationMBean.estiloObligatorio}">
                            <f:selectItems value="#{asientoMBean.siOrigenesFiltro}" var="parametroDto"  itemLabel="#{parametroDto.descripcion}" itemValue="#{parametroDto}" />                        
                       </p:selectOneMenu>
                        
                        <h:outputLabel styleClass="label" value="#{i18n['label.conta.asiento.serie.documento']}"/>
                        <p:inputText label="#{i18n['label.conta.asiento.serie.documento']}" 
                                     value="#{asientoMBean.dtoFiltro.serieDocumento}"  
                                     size="10" styleClass="txtCampo">
                            <f:validateLength maximum="20"  />
                        </p:inputText>
                        
                        <h:outputLabel styleClass="label" value="#{i18n['label.conta.asiento.num.documento']}"/>
                        <p:inputText label="#{i18n['label.conta.asiento.num.documento']}" 
                                     value="#{asientoMBean.dtoFiltro.numDocumento}"  
                                     size="15" styleClass="txtCampo">
                            <f:validateLength maximum="20"  />
                        </p:inputText>
                        
                        <h:outputLabel styleClass="label" value="#{i18n['label.conta.asiento.tercero.tercero']}"/>
                        <p:inputText label="#{i18n['label.conta.asiento.tercero.tercero']}" 
                                     value="#{asientoMBean.dtoFiltro.terceroDto.descripcion}" 
                                     size="25" styleClass="txtCampo">
                            <f:validateLength maximum="35"  />
                        </p:inputText>
                        
                        <h:outputLabel styleClass="label" value="#{i18n['label.conta.asiento.estado']}"/>
                        <p:selectOneMenu value="#{asientoMBean.dtoFiltro.estadoDto}"  converter="parametroConvert"  
                                                 style="#{applicationMBean.estiloObligatorio}">
                            <f:selectItems value="#{asientoMBean.siEstadosFiltro}" var="parametroDto"  itemLabel="#{parametroDto.descripcion}" itemValue="#{parametroDto}" />                        
                       </p:selectOneMenu>
                        
                        <h:outputLabel styleClass="label" value="#{i18n['label.conta.asiento.ano']}" rendered="false"/>
                       <p:selectOneMenu rendered="false" value="#{asientoMBean.dtoFiltro.anoDto}"  converter="parametroConvert"  disabled="#{sessionMBean.accion == applicationMBean.ver}"                               
                                                 style="#{applicationMBean.estiloObligatorio}">
                                        <f:selectItems value="#{asientoMBean.siAnosFiltro}" var="parametroDto"  itemLabel="#{parametroDto.descripcion}" itemValue="#{parametroDto}" />                        
                       </p:selectOneMenu>
                        <h:outputLabel styleClass="label" value="#{i18n['label.conta.asiento.mes']}" rendered="false"/>
                        <p:selectOneMenu rendered="false" value="#{asientoMBean.dtoFiltro.mesDto}"  converter="parametroConvert"  disabled="#{sessionMBean.accion == applicationMBean.ver}"                               
                                                 style="#{applicationMBean.estiloObligatorio}">
                            <f:selectItems value="#{asientoMBean.siMesesFiltro}" var="parametroDto"  itemLabel="#{parametroDto.descripcion}" itemValue="#{parametroDto}" />                        
                       </p:selectOneMenu>
                        
                    </h:panelGrid>
                    <f:facet name="footer">

                        <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.buscar.filtro.tip']}" accesskey="#{applicationMBean.keyBuscar}"
                                         value="#{i18n['general.button.buscar.filtro']}" ajax="false" 
                                         style="#{applicationMBean.estilosBtnBuscar}" 
                                         actionListener="#{asientoMBean.buscar()}" >
                            <f:ajax  render="pnlTabla pgFormFilter"/>
                        </p:commandButton>  

                        <p:commandButton title="#{i18n['general.button.nuevo.tip']}" accesskey="#{applicationMBean.keyNuevo}"
                                         icon="ui-icon ui-icon-plus"
                                         style="#{applicationMBean.estilosBtnNuevo}" 
                                         value="#{i18n['general.button.nuevo']}" 
                                         ajax="false"                                        
                                         action="#{asientoMBean.nuevo}"
                                         >                                    
                        </p:commandButton>   
                        <p:spacer width="20" />
                        <h:outputText  value="#{asientoMBean.lista.size()} #{i18n['form.general.mensaje.cantidad.encontrada']}" styleClass="mensaje" rendered="#{asientoMBean.lista!=null}"/>
                    </f:facet>
                </p:panel>  

                <p:panel id="pnlTabla" header="#{i18n['general.panel.titulo.busqueda.resultado']}"  style="#{applicationMBean.estiloTitulo}" rendered="#{asientoMBean.lista!=null &amp;&amp;asientoMBean.lista.size()>0}">
                    <h:panelGrid>
                        <p:dataTable id="tblPrincipal" value="#{asientoMBean.lista}" var="dto" paginatorPosition="top"                                     
                                     paginator="true" rows="#{sessionMBean.cantidadRegistros}"  widgetVar="widTable">                        
                            <p:column >         
                                <h:panelGrid columns="3" cellspacing="1" styleClass="estiloPanelGrid">
                                    <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.ver.tip']}"
                                                     action="#{asientoMBean.ver}" ajax="false">
                                        <f:setPropertyActionListener value="#{dto}" target="#{asientoMBean.dto}" />                                                                    
                                    </p:commandButton>
                                    <p:commandButton icon="ui-icon ui-icon-pencil" title="#{i18n['general.button.editar.tip']}"
                                                     action="#{asientoMBean.editar}" ajax="false">
                                        <f:setPropertyActionListener value="#{dto}" target="#{asientoMBean.dto}" />                                                                    
                                    </p:commandButton>
                                    <p:commandButton icon="ui-icon ui-icon-document" title="#{i18n['general.button.nuevo.tip']}"
                                                     action="#{asientoMBean.nuevoIniciado}" ajax="false">
                                        <f:setPropertyActionListener value="#{dto}" target="#{asientoMBean.dto}" />                                                                    
                                    </p:commandButton>
                                </h:panelGrid>
                            </p:column>

                            <p:column headerText="#{i18n['label.conta.asiento.id']}"  styleClass="general">
                                <h:outputText value="#{dto.id}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['label.conta.asiento.origen']}"  styleClass="general">
                                <h:outputText value="#{dto.origenDto.descripcion}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['label.conta.asiento.ano']}"  styleClass="general">
                                <h:outputText value="#{dto.anoDto.descripcion}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['label.conta.asiento.mes']}"  styleClass="general">
                                <h:outputText value="#{dto.mesDto.descripcion}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['label.conta.asiento.numero.asiento']}"  styleClass="general" style="text-align: right;">
                                <h:outputText value="#{dto.numeroAsiento}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['label.conta.asiento.fec.operacion']}"  styleClass="general" style="text-align: center;">
                                <h:outputText value="#{dto.fechaOperacion}" styleClass="general" >
                                    <f:convertDateTime pattern="#{applicationMBean.formatoFecha}"  timeZone="#{applicationMBean.timeZone}"/> 
                                </h:outputText>
                            </p:column>
                            <p:column headerText="#{i18n['label.conta.asiento.serie.documento']}"  styleClass="general" style="text-align: right;">
                                <h:outputText value="#{dto.serieDocumento}" styleClass="general" />
                            </p:column>
                            
                            <p:column headerText="#{i18n['label.conta.asiento.num.documento']}"  styleClass="general" style="text-align: right;">
                                <h:outputText value="#{dto.numDocumento}" styleClass="general" />
                            </p:column>
                            <p:column headerText="#{i18n['label.conta.asiento.total.debe']}"  styleClass="general" style="text-align: right;">
                                <h:outputText value="#{dto.totalDebe}" styleClass="rowStyleRojo" >
                                    <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                                </h:outputText>
                            </p:column>
                            <p:column headerText="#{i18n['label.conta.asiento.total.haber']}"  styleClass="general" style="text-align: right;">
                                <h:outputText value="#{dto.totalHaber}" styleClass="rowStyleAzul" >
                                    <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                                </h:outputText>
                            </p:column>
                            <p:column headerText="#{i18n['label.conta.asiento.diferencia']}"  styleClass="general" style="text-align: right;">
                                <h:outputText value="#{dto.diferencia}" styleClass="rowStyleVerde" >
                                    <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                                </h:outputText>
                            </p:column>
                            
                            <p:column headerText="#{i18n['general.label.estado']}"  styleClass="general">
                                <h:outputText value="#{dto.estadoDto.descripcion}" styleClass="general" />
                                </p:column>
                            
                            <p:column headerText="#{i18n['label.conta.asiento.glosa']}"  styleClass="general">
                                <h:outputText value="#{dto.glosa}" styleClass="general" />
                            </p:column>
                        </p:dataTable>        
                    </h:panelGrid>
                </p:panel>
            </h:form>
        </ui:define>
    </ui:composition>
</html>